home *** CD-ROM | disk | FTP | other *** search
/ The 640 MEG Shareware Studio 2 / The 640 Meg Shareware Studio CD-ROM Volume II (Data Express)(1993).ISO / compress / arcd096b.zip / ARCDOC.DOC < prev    next >
Text File  |  1992-08-15  |  48KB  |  1,061 lines

  1.  T H E   L A S T   W O R D   I N   U P L O A D   F I L E   P R O C E S S I N G
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.                                  ArcDoctor v0.96ß
  21.                                 Copyright(c), 1992  
  22.                                    -=RyanWare=-
  23.                                 Melbourne, Florida
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.                                   Support:
  39.                       Flamingo BBS .... (407)253-0782        
  40.                   US ROBOTICS Dual Std. 1200-16800 baud
  41.                        FidoNet@USA  ... (1:374/46) 
  42.                      SnailMail ...... 1061 Ellen Ct.
  43.                                       Melbourne, Fla. 32935  
  44.  
  45.  
  46.                                        ii
  47.  
  48.                               ArcDoctor Overview  
  49.  
  50.  * Totally automated - no user intervention required.
  51.  * Open up any archived file - even if it has an erroneous extension.
  52.  * Convert any archive to any other archive format.  (Requires Registration)
  53.  * Performs all processing on recursive archives.    (Requires Registration)
  54.  * Seek out and delete "The Draw" .COM files from archives. (Req. Regist.)
  55.  * Scan all uploaded files for viruses - Archived or not.
  56.  * Remove any unwanted file names from within archives - Wild cards accepted.
  57.  * Refuse uploads based on file name - Wild cards accepted.
  58.  * Refuse uploads based on age.
  59.  * Insert any file(s) into all processed archives.
  60.  * Remove ARJ and ZIP comments from all ARJ and ZIP format archives.
  61.  * Add ARJ and ZIP comments to all ARJ and ZIP format archives.
  62.  * Support past, present and future archive engines via external declarations.
  63.  * User definable actions on a per archiver errorlevel bases.
  64.  * Moves or deletes files that fail processing.
  65.  * Keep a detailed journal of all processing.
  66.  * All features are fully configurable.
  67.  * Support a RAM disk.
  68.  
  69.    Coming in version 1.0     
  70.  
  71.  * Support for SFX files.
  72.  * Support graphics file conversions.
  73.  * Support TeleDisk .TD0 files.
  74.  * Create Fido/Opus style .MSG report of ALL -or- BAD U/L's
  75.  
  76.    Perfect for                           May Be Used In   
  77.  
  78.  * Bulletin Board Systems.             * BBS upload batch files.
  79.  * Bulletin Board Users.               * BBS upload auto-doors.
  80.  * Shareware Distributors.             * BBS nightly events.
  81.  * Network Systems.                    * Total directory/system conversions.
  82.  * Corporate Use.                      * Total directory/system checks.  
  83.  * End user's com batch file.          * Disk content certification.
  84.  
  85.                      ArcDoctor Flavor (ADFLAVOR.EXE) Overview
  86.  
  87.  * Search and Replace all converted "from" archive extensions to your Default.
  88.  * Uses ArcDoc.Cfg for ease of use.
  89.  * User selectable file display format.
  90.  * Works on ASCII text files, such as FILES.BBS.
  91.  * Works on structured data files such as Searchlight and WildCat! data files.
  92.  
  93.                  View Settings ArcDoctor (VSETARCD.EXE) Overview
  94.  
  95.  * Reads ArcDoc.Cfg.
  96.  * Verifies declared filenames and paths.
  97.  * Validates COMPRESS.CFG setting.
  98.  * Notifies you of potential problems in your ArcDoc.Cfg.
  99.  * Displays all ArcDoctor settings on one screen.
  100.  
  101.  
  102.                                       iii
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.                     T A B L E     O F     C O N T E N T S 
  120.  
  121.  
  122.  
  123.          Acknowledgments / Licensing Agreement...................  1 
  124.          What's in this package .................................  2 
  125.          Introduction to ArcDoctor ..............................  2 
  126.          Quick Start ............................................  3 
  127.          Configuration Files ....................................  4 
  128.             ArcDoc.Cfg ..........................................  4 
  129.             Compress.Cfg ........................................  9 
  130.             ErrorLev.Def ........................................ 11
  131.          Using ArcDoctor with Tele-Com Programs ................. 14 
  132.          Using ArcDoctor with Bulletin Board Systems ............ 15 
  133.          Using VSetArcD ......................................... 16 
  134.          Using ADFlavor ......................................... 17 
  135.          Index .................................................. 18 
  136.          Bug Reports and Suggestions............................. 19 
  137.          Registration ........................................... 20
  138.  
  139.  
  140.                                     Page 1
  141.  
  142.  
  143.                                 Special Thanks
  144.                                 --------------
  145.  
  146.  
  147. I would like to express special thanks to the following beta testers for 
  148. their time and trouble:
  149.  
  150. Operator            BBS      System               Fido     Location     
  151. ----------------------------------------------------------------------------
  152. Greg Belanger       SLBBS    Late-Night           134/48   Calgary, Alta, Can.
  153. Genie Bohn          SLBBS    Flamingo             374/46   Melbourne, Fla.
  154. Bill Booth          PCB14.5  Paradise Theater      N/A     Cocoa, Fla.
  155. John Carrol         RA       Treasure Coast       374/569  Vero Beach, Fla. 
  156. William Herrington  RA       SaddleBag            374/38   Satellite Bch, Fla.
  157. Juan Perez          SLBBS    Trojan Express      3609/5    West Palm Bch, Fla.
  158. Jerry Russell       TBBS     Tech-Talk            374/1    Titusville, Fla.
  159.  
  160. A special thanks to Frank LaRosa for writing the (IMHO) finest BBS software 
  161. on the market today: Searchlight
  162.  
  163. Dedicated to all of the SysOps out there who's hard work on their BBS' goes 
  164. unnoticed - EXCEPT when something doesn't work <Grin>.
  165.  
  166.  
  167.                             Acknowledgments
  168.                             ---------------
  169.  
  170. The following are trademarks of their respective holders:
  171.  
  172. ARC, ARJ, ICE, LZH, LHA, PAK, PKZIP ,PKUNZIP, ZOO,  TheDraw, TeleDisk, 
  173. ScanV, Fido, Opus, Searchlight, PC Board, Remote Access, TAG, TBBS, 
  174. WildCat!, Maximus, GIF, JPEG, DoorWay.   
  175.  
  176. Any omission of others mentioned in this documentation and relevant 
  177. material is only an oversight and in no way is intended to imply lack 
  178. of recognition of the said trademark.
  179.  
  180.  
  181.                             Usage agreement
  182.                             ---------------
  183.  
  184. You are granted a thirty day permit to evaluate this software on the 
  185. condition that you understand "usage" of ArcDoctor is a legal 
  186. acknowledgment and acceptance of this agreement.  After which time, 
  187. your free evaluation period ends.  If you continue to use this software 
  188. beyond the thirty days, you *MUST* register ArcDoctor.
  189.  
  190.  
  191.                                      Page 2
  192.  
  193.                                   Packing List
  194.                                   ------------
  195.  
  196. README! ........ If included, this document will have any late breaking 
  197.                  information that didn't make it to this document by the 
  198.                  release date.
  199. ARCDOC.EXE ..... This is the main executable program.  
  200. VSETARCD.EXE ... Debugging utility for ArcDoc.Cfg.
  201. ADFLAVOR.EXE ... Directory maintenance for all BBS file lists.
  202. ARCDOC.CFG ..... Main configuration file for all of ArcDoctor's options. 
  203. COMPRESS.CFG ... Maximus standard archiver configuration file.
  204. ERRORLEV.DEF ... -=RyanWare=- standard archiver error action config file.
  205. HISTORY.TXT .... Development history, bug fixes for ArcDoctor. 
  206. ARCDOC.DOC ..... This document.
  207.  
  208.                        Introduction to the ArcDoctor Files 
  209.                        ----------------------------------- 
  210.  
  211. ARCDOC.EXE   Was designed  to operate with a simple command-line - no switches
  212.              required.  This program is a powerhouse in a small package.  Once 
  213.              configured for your system, ArcDoctor may be run from the command 
  214.              line, communications program batch files, file transfer protocol 
  215.              batch files, BBS file processing events, maintenance events, etc.
  216. VSETARCD.EXE Was initially developed to aid -=RyanWare=- in the development
  217.              of ArcDoctor - This program gave a way to evaluate the status 
  218.              of the complex arrays of data in memory while ArcDoctor was 
  219.              running.  It has been modified to evaluate your configuration 
  220.              (ArcDoc.Cfg) and compare those settings to your system.  Thus 
  221.              minimizing the chances of fatal errors caused by configuration 
  222.              errors.
  223. ADFLAVOR.EXE Is a new addition to version 0.96ß.  Still in it's infancy, 
  224.              when fully developed, this program will contain a total user 
  225.              interface for ArcDoctor. Presently, contained in ADFlavor is 
  226.              a search and replace function to facilitate conversions of 
  227.              entire archive directories.  This program simply edits BBS 
  228.              file lists to reflect the SysOp's chosen archive format - thus 
  229.              making it simple and safe to convert entire directories to a new 
  230.              archive format.
  231. ARCDOC.CFG   The dreaded config file... great care has gone into this file
  232.              to facilitate a truly forgiving configuration file that contains 
  233.              it's own documentation.
  234. COMPRESS.CFG Is a standard Compress.Cfg file as per the standard established 
  235.              by Maximus BBS and has been adopted by several of the mail 
  236.              tossers on the market to date.  Used to define archive engines, 
  237.              thus future archivers will not make ArcDoctor obsolete. 
  238. ERRORLEV.DEF Is released into the public domain by -=RyanWare=- in hopes
  239.              of filling the gap in information supported by Compress.Cfg. 
  240.              This file contains much the same format as Compress.Cfg, but 
  241.              is used to declare errorlevels reported by archive engines. 
  242.              Declarations include archive name, the errorlevel, action to 
  243.              be taken, and a display string.
  244.  
  245.                                      Page 3
  246.  
  247.                                   Quick Start
  248.                                   -----------
  249.  
  250. ArcDoctor was designed for simplicity of use and through file evaluations. 
  251. Presently, you will not find all of the features in ArcDoctor in any other 
  252. program on the market.  The power is HERE!  Setup should be rather pain 
  253. free for you.  You only need to edit ArcDoc.Cfg to be up and running.
  254.  
  255. You will need to place ARCDOC.CFG, ERRORLEV.CFG and ARCDOC.EXE in the 
  256. same directory in your DOS path.  It is recommended that you also place 
  257. COMPRESS.CFG in the same directory, though not required - If you run 
  258. Maximus BBS, Squish mail tosser, or another program that uses Compress.Cfg, 
  259. you may optionally declare a path for Compress.Cfg in ArcDoc.Cfg.
  260.  
  261. ArcDoc.Cfg is a fully commented and self-documented file.  You should be 
  262. able to edit ArcDoc.Cfg with little or no trouble, if you know how to read 
  263. and use an ASCII text editor.  If you do not fully understand what a keyword 
  264. in ArcDoc.Cfg does, simply comment it out (put a semi-colon ";" in front of 
  265. it), then later refer to this document for more information.  If you still 
  266. do not understand something, please, feel free to contact me at one of the 
  267. locations listed on the cover page of this document.
  268.  
  269. Once you have tailored ArcDoc.Cfg to you system, you should run VSETARCD. 
  270. VSetArcD will read ArcDoc.Cfg and Compress.Cfg into RAM, check to verify all 
  271. declared paths and filename, and then display the results to your screen.  
  272. If you have an invalid entry in either of the included CFG files you will 
  273. be notified by VSetArcD.
  274.  
  275. Currently ARC, ARJ, LHA, PAK, PK(UN)ZIP, and ZOO archive formats are declared 
  276. in Compress.Cfg.  All but ZOO are declared in ErrorLev.Cfg - I could find 
  277. no documentation on ZOO.  ArcDoctor expects to find all of these utilities 
  278. somewhere in your DOS path statement.  If one of these utilities is missing, 
  279. from your DOS path, VSetArcD will signify that the declared archive engine 
  280. (in Compress.Cfg) is NOT in your DOS path by placing an asterisk "*" in front 
  281. of the archiver's name on the "Available" line.  Should this occur, be sure 
  282. to remedy the problem - preferably by locating a copy and putting it in your 
  283. DOS path.
  284.  
  285. If all checks out okay with VSetArcD you are all set to run ArcDoctor from 
  286. the command-line or install ArcDoctor in the way(s) that best suits your 
  287. system's software.  We use ArcDoctor to process new uploads as they come in.
  288. Other systems are using ArcDoctor to process SND files with their front ends.  
  289. Another option is to set ArcDoctor up as an external maintenance event.  
  290. Creating a batch file for your tele-com program that runs ArcDoctor in your 
  291. new d/l's directory then moves the files to a verified directory is another 
  292. useful way of setting up  ArcDoctor.
  293.  
  294.                                    Page 4
  295.  
  296.                            Configuration Files Guide 
  297.                            -------------------------
  298.  
  299.  
  300. ArcDoc.Cfg
  301. ----------
  302.  
  303. Edit ARCDOC.CFG to suit your needs.  This file is not case sensitive.  
  304. Blank lines will be ignored. Lines beginning with semi-colons ";" will be 
  305. ignored.  Your default archive statement (ConvtDefault) *MUST* come after 
  306. ArcDataPath, if ArcDataPath is declared,  other than that, Keywords/commands 
  307. may come in any order.
  308.  
  309.  
  310. ArcDataPath <drive>:\<directory>
  311.  
  312.   Full DOS path to COMPRESS.CFG.  This declaration is optional and should 
  313.   only be used if you are already using a valid COMPRESS.CFG for another 
  314.   program such as SQUISH.  In most cases you should comment this command 
  315.   out, and place COMPRESS.CFG in the same directory as this file 
  316.   (ARCDOC.CFG).
  317.  
  318.  
  319. ArcFilePath <d:\path>
  320.  
  321.   DOS path for ArcDoctor to find files that are to be scanned/converted.
  322.   If the parent directory is denoted as a dot ("."), ArcDoctor will
  323.   expect any subsequent directories to be sub-directories of the directory 
  324.   which ArcDoctor was executed from. This command should be commented out 
  325.   in most cases.  If this command is commented out ArcDoctor will scan
  326.   all files the directory from which ArcDoctor was executed, thus any 
  327.   directory on the computer may be processed by ArcDoctor. Un-commenting 
  328.   this keyword will force ArcDoctor to run in the declared directory any 
  329.   time ArcDoctor is executed.
  330.  
  331.  
  332. WorkPath <[d:\][path]>
  333.  
  334.   Full DOS path for ArcDoctor to Scan and convert archives in.  A RAM 
  335.   drive is recommended.  ArcDoctor will create a temporary sub-directory 
  336.   under this path to work in.  If commented out, ArcDoctor will default 
  337.   to the current directory - creating the temporary directory as a sub-
  338.   directory of the directory in which ArcDoctor was executed. 
  339.   ArcDoctor will remove this directory after operation, *IF* it is not 
  340.   interrupted.
  341.  
  342.                                      Page 5
  343.  
  344.                                ArcDoc.Cfg (cont.)
  345.                                ------------------
  346.  
  347.  
  348.  
  349. ConvtDefault <Archiver Name>
  350.  
  351.   Default Archiver to convert all other archives to.  This string must 
  352.   match the declaration following the keyword "Archiver" in COMPRESS.CFG 
  353.   in order for any conversions to take place.
  354.  
  355.  
  356. BadFilesDir <[d:]\path>
  357.  
  358.   Path to place Archives that fail testing, so you may later look at them. 
  359.   Note: you should not use this command and KillBadFiles.  This directory 
  360.   need not exist -  should a file fail processing, and this keyword active, 
  361.   ArcDoctor will create this directory if it does not exist.
  362.  
  363.  
  364. KillBadFiles
  365.  
  366.   This keyword instructs ArcDoctor to delete files that fail testing.
  367.   Note: You should not use this command and BadFilesDir.
  368.  
  369.  
  370. ScanCommand <virus utility>
  371.  
  372.   Default Virus scanning utility.  Usually McAfee's SCAN.EXE
  373.   Note: If not declared, no virus checking will take place.
  374.   SCAN.EXE is recommended - the DOS error levels for SCAN.EXE  are hard coded 
  375.   into ArcDoctor.  Should you use a different virus detection utility, be 
  376.   sure it will exit with a DOS errorlevel=1, or ArcDoctor may not intercept 
  377.   an infected file correctly.  The following are intercepted by ArcDoctor:
  378.  
  379.   ERRORLEVEL 0  ...  No viruses found.
  380.   ERRORLEVEL 1  ...  One or more viruses found. 
  381.   ERRORLEVEL 2  ...  Abnormal termination (program error). 
  382.   ERRORLEVEL 3  ...  One or more uncertified files found.
  383.  
  384.   SCAN.EXE (or your virus scanning utility) must reside in your DOS path  
  385.   in order for ArcDoctor to execute your virus utility.
  386.   eg...  ScanCommand scan.exe
  387.  
  388.  
  389. ScanParams <optional parameters>
  390.  
  391.   Optional parameters to pass to "ScanCommand".  If not declared, no 
  392.   parameters will be passed to virus checker. If ScanCommand is not 
  393.   declared, this option will have no effect. eg... ScanParams /nomem /nopause
  394.  
  395.                                     Page 6
  396.  
  397.                               ArcDoc.Cfg (cont.)
  398.                               ------------------
  399.  
  400.  
  401.  
  402.  
  403. AddArcCmt <d:\path\filename>
  404.  
  405.   Enabling this command is only useful if you use ZIP or ARJ as your default 
  406.   archiver.  The parameter to this command is the full <drive:\path\filename> 
  407.   to an ASCII text file, which will be displayed on-screen when un-archiving 
  408.   occurs.  eg...  AddArcCmt c:\slbbs\sldir.txt
  409.  
  410.  
  411. StripArcCmt
  412.  
  413.   Tells ArcDoctor to remove archive Comments from all ARJ and ZIP files 
  414.   being processed.  Not recommended if AddArcCmt is enabled - it won't 
  415.   hurt anything, but it will slow down processing.  If you have selected 
  416.   a default archiver other than ARJ or ZIP, there is no need for this 
  417.   command,  as all ARJ and ZIP files will be converted to your default 
  418.   archive format. eg... StripArcCmt
  419.  
  420.  
  421. SkipFiles <ext><,ext<,ext><,ext><,ext><,ext>
  422.  
  423.   This command will force ArcDoctor to ignore files with the declared 
  424.   extensions.  By default, ArcDoctor tries to un-arc all files in the 
  425.   current directory -or- ArcFilePath.  ArcDoctor can un-archive any archived 
  426.   file, provided the archiver is declared properly inside COMPRESS.CFG. 
  427.   ArcDoctor will first check the files extension, if it matches a declared 
  428.   extension in COMPRESS.CFG, ArcDoctor will then verify the archive format 
  429.   if a match fails, ArcDoctor will try to determine the files true format. 
  430.   If a format is found, ArcDoctor will open the archive.  eg... you get a 
  431.   file called SAMPLE.ARJ, but it is really a misnamed ZIP file, ArcDoctor 
  432.   will be able to open it.  All extensions not declared on this line are 
  433.   evaluated for valid archive formats.  Each extension declared must be 
  434.   separated by a comma "," and there must be no spaces in the list of 
  435.   extensions.   NOTE: This keyword  will have no effect on  the keyword 
  436.   "ScanCommand".  eg... SkipFiles gif,com,ans,txt,doc,lst,sys,bat
  437.  
  438.  
  439. StripTdComs
  440.  
  441.   This command tells ArcDoctor to check all .COM files in archives to
  442.   see if they are ANSI COM files created by TheDraw... If any are found,
  443.   they will be stripped (deleted) from the archive.  This command will have 
  444.   no effect on COM files that are not within archives. eg... StripTdComs
  445.  
  446.                                      Page 7
  447.  
  448.                                ArcDoc.Cfg (cont.)
  449.                                ------------------
  450.  
  451.  
  452.  
  453.  
  454. StripFilesInArc <filename><,filename><,filename><,filename> 
  455. StripFilesInArc @<d:\path\filename>
  456.  
  457.   Files listed in this command will be removed from archives if they exist. 
  458.   Wild cards are excepted, so be CAREFUL!! <Grin>... *.EXE in this command 
  459.   will delete *ALL* executable files in processed archives!  Recursive 
  460.   declarations of this command are valid. you may declare up to 100 file 
  461.   names to strip from processed archives.  Either of the two following 
  462.   formats for this command are valid:
  463.  
  464.   1)  A comma "," is used to separate file names, there should be no
  465.       spaces between file names:
  466.  
  467.   2) You may use the "@<filename>" declaration if you choose to keep a 
  468.      separate ASCII text file listing file names to be stripped.  The 
  469.      accepted standard for this file format is one file name per line
  470.      eg...
  471.         
  472.         StripFilesInArc Autoexec.*,config.sys,pkzip.exe,pkunzip.exe
  473.            - and/or -
  474.         StripFilesInArc @c:\data\killfile.lst
  475.  
  476.  
  477. AddFilesToArc <[d:]\path\filename><,[d:]\path\filename><,[d:]\pa . . .
  478. AddFilesToArc @<[d:]\path\filename>
  479.  
  480.    This keyword instructs ArcDoctor to do just the opposite of 
  481.    StripFilesInArc - All processed archives will have the declared files 
  482.    inserted into the archive.  You may use either of the declaration 
  483.    formats accepted by StripFilesInArc, with only a slight modification: 
  484.    the file names must include the full DOS path where the files may be 
  485.    located.  eg...
  486.  
  487.           AddFilesToArc c:\tp6\arc\synergy.com,c:\tp6\arc\vote.com
  488.             - and/or -
  489.           AddFilesToArc @c:\data\insert.lst
  490.  
  491.  
  492. RefuseU/L <filename><,filename><,filename><,filename> 
  493. RefuseU/L @<[d:]\path\filename>
  494.  
  495.   This command will allow you to refuse any files you do not want.  
  496.   Once uploaded, any matching files will be truncated prior to processing.  
  497.   Note: this will not effect any files inside any archives.  This keyword 
  498.   uses the same command structure as StripFilesInArc:  eg...
  499.  
  500.            RefuseU/L *.BAT,*.CFG,*.SYS,*.GIF,*.MNU,CONFIG.*
  501.            - and/or -
  502.            RefuseU/L @c:\data\refuse.lst
  503.  
  504.                                      Page 8
  505.  
  506.                                ArcDoc.Cfg (cont.)
  507.                                ------------------
  508.  
  509.  
  510.  
  511.  
  512. RefuseDate <Year>
  513.  
  514.   Allows you to refuse files dated older that the specified year.  This 
  515.   will not affect files within archives - if activated, this function will 
  516.   check the DOS file dates and delete any files that are older than the 
  517.   specified year prior to any other processing.  There is one exception to 
  518.   this - if a file is stamped with 1980 as the year, it is assumed that the 
  519.   system which created the archive has a non-functioning clock, therefore 
  520.   ArcDoctor will not delete any file stamped with 1980 as the year.  eg...
  521.  
  522.   RefuseDate 1987
  523.  
  524.  
  525. LogActivity
  526.  
  527.   Enables detailed ArcDoctor Journal.  ARCDOC.LOG (if created) may be found
  528.   in the same directory in which you keep this file (ARCDOC.CFG).
  529.  
  530.  
  531. SysopMail
  532.  
  533.   Enables the sysop mail function. The first parameter should be either 
  534.   Bad -or- All. "Bad" only sends sysop mail when a file fails testing, 
  535.   "All" sends the Sysop mail after every transaction. You must have a 
  536.   command-line utility to send sysop mail in order for this feature to 
  537.   work. ArcDoctor will create a temporary file and insert this file name 
  538.   in place of the "%l"... it is up to you to provide a valid command-line 
  539.   following the "@" sign for this feature to work. 
  540.  
  541.            **** This feature is not yet implemented. ****
  542.                       Coming in version 1.0
  543.  
  544.                                      Page 9
  545.  
  546.                        Configuration Files Guide (cont.) 
  547.                        ---------------------------------
  548. Compress.Cfg
  549. ------------
  550.  
  551. As distributed Compress.Cfg comes configured for use with PKARC, PKZIP, PAK, 
  552. ZOO, ARJ and LHA.  This will allow Arcdoctor to work with ARC, ZIP, PAK, SDN, 
  553. ZOO, ARJ, LZH and ICE archive formats.
  554.  
  555. COMPRESS.CFG is divided into records, one for each archive engine.  ArcDoctor 
  556. will accept up to 20 records in Compress.Cfg (20 different archivers).  
  557. The format for each record is as follows:
  558.  
  559. Archiver <name>
  560.    Extension  <ext>
  561.    Ident      <position>,<hex string>
  562.    Add        <command to add files to archive>
  563.    Extract    <command to extract files from archive>
  564.    View       <command to view list of files in archive>
  565. End Archiver
  566.  
  567.                            Compress.Cfg KeyWords 
  568.                            ---------------------
  569.  
  570. "Archiver"   begins the declaration of an archive engine record.   
  571.              <name> is a short user-definable string that is used 
  572.              to cross-reference the declared record by programs that 
  573.              use Compress.Cfg.  The "name" should contain no embedded 
  574.              spaces, nor should it be longer than 8 characters long.
  575.  
  576. "Extension"  declares the default extension provided to the archived 
  577.              files by the declared archive engine.  This is used to 
  578.              help facilitate a speedier verification of the archives 
  579.              true format.
  580.  
  581. "Ident"      is used to verify an archive's true archive engine.  It
  582.              is also used to determine an archive format if a file is 
  583.              missing an extension or has been misnamed by the uploader.
  584.  
  585.              <position> tells the program that is processing the archive 
  586.              where to look for the archiver's signature.  If <position> 
  587.              is greater than or equal to zero then ArcDoctor will first 
  588.              read in <position> bytes from the beginning of the file, the 
  589.              check for the archiver's signature.  If <position> is less 
  590.              than zero (negative) then ArcDoctor will read into the file 
  591.              <filesize> + <position> then look for the archive's signature. 
  592.              eg... the file is 359,000 bytes in size, <position>= -2 then 
  593.              359,000 +(-2) = 358,998 or ArcDoctor will read the first 
  594.              358,998 bytes of the file, then start looking for the signature 
  595.              on the 358,999th byte.  Thus -2 really means 1 byte from the 
  596.              end of the file.  Respectively, if <position>=0 then the first 
  597.              byte of the file is the beginning of the signature.
  598.  
  599.                                      Page 10
  600.  
  601.                               Compress.Cfg  (cont.) 
  602.                               ---------------------
  603.  
  604.              <hex string> is the actual signature of the archive engine, 
  605.              located at <position> in the archive.  Since most archivers 
  606.              use special control characters in their signature, the only 
  607.              reliable way to pass this information on to a program using 
  608.              Compress.Cfg is to use the hexadecimal equivalent of the ASCII 
  609.              character - thus each character in a signature must be 
  610.              represented by the two hex numbers (0-F) that represent the 
  611.              actual character.
  612.  
  613. "Add", "Extract" and "View"  specify the actual commands for the declared 
  614.              archive engine.  At the present time, ArcDoctor does not use 
  615.              the "View" keyword, but to ensure that this file remains 
  616.              compatible with other programs that may use Compress.Cfg you 
  617.              should be sure to define "View" for any archive engines that 
  618.              you may add to Compress.Cfg.   Use %a to declare the archive's 
  619.              name, and %f to declare add/extract/view file names.
  620.  
  621. "End Archiver" signifies the end of an archive engine record.  
  622.              Each "Archiver" keyword must be followed  by the "End Archiver" 
  623.              keyword to end the declaration of the archive engine record.
  624.  
  625. Please note that in order to limit the number of falsely identified archive 
  626. formats it is important to declare PAK before ARC.   PAK uses the same 1st 
  627. byte signature as ARC, but also uses an additional signature byte at the end 
  628. of the archive.  ArcDoctor reads Compress.Cfg on record at a time, if a match 
  629. is found, then a file is presumed to be an archive of the matched archive 
  630. engine.  Thus if ARC is declared before PAK, PAK files will be identified as 
  631. ARC files and all processing on that archive will fail.
  632.  
  633.                                      Page 11
  634.  
  635.                        Configuration Files Guide (cont.) 
  636.                        ---------------------------------
  637. ErrorLev.Def
  638. ------------
  639.  
  640. It was the original idea to have all files that fail unpacking be rejected 
  641. as bad files.  It soon became apparent that taking that approach was not 
  642. feasible due to the many different types of errors encountered by different 
  643. archive engines.  Most notable, was the problem ARJ constantly had with 
  644. running out of memory while trying to create archives of a minimum size. 
  645. This was only noticed with ARJ, and only while test-running ArcDoctor code 
  646. from within the compiler. The problem was foreseen - ArcDoctor truncating 
  647. perfectly good ARJ archives due to a lack of memory on the host system.   
  648. This would not have happened if ArcDoctor where setup to place all BadFiles 
  649. in a bad files directory,  but to be on the safe side a new approach was taken.
  650.  
  651. ErrorLev.Def was created primarily for the above purpose, but it also seemed 
  652. to be just the answer to enhance the error reporting abilities of ArcDoctor. 
  653. A field was added that will allow you to have a particular string reported 
  654. to the CRT, Log, and MSG file, should an error occur.  Though Compress.Cfg 
  655. was designed in such a way that such additional data could have been added 
  656. to it with no adverse results to other programs that use Compress.Cfg - if 
  657. they where properly coded.  The safe path was chosen: a separate file. 
  658. Creating this additional file has another merit: Since the information in 
  659. this file is only needed if an error occurs, this file is not processed 
  660. unless an error occurs.  On the other hand, Compress.Cfg is read into an 
  661. array in memory at the initialization of ArcDoctor.
  662.  
  663. ERRORLEV.DEF is divided into records, one for each archive engine.  The format 
  664. and most keywords where borrowed from Compress.Cfg.  ErrorLev.Def should start 
  665. out with the keyword "NotDeclared".  Due to different archive engines working 
  666. in different ways, two different styles of records where designed:
  667.  
  668.  
  669.           The first field should be the "NotDeclared" keyword:
  670.  
  671. NotDeclared <action>
  672.  
  673.           The format of the first type of record is as follows:
  674.  
  675. Archiver <name>
  676.   Add
  677.     <errorlev>;<action>  <response string>
  678.     .
  679.     .
  680.     .
  681.   Extract
  682.     <errorlev>;<action>  <response string>
  683.     .
  684.     .
  685.     .
  686. End Archiver
  687.  
  688.                                      Page 12
  689.  
  690.                               ErrorLev.Def  (cont.) 
  691.                               ---------------------
  692.  
  693.  
  694.           The format of the second type of record is as follows:
  695.  
  696. Archiver <name>
  697.   All
  698.     <errorlev>;<action>  <response string>
  699.     .
  700.     .
  701.     .
  702. End Archiver
  703.                                    KeyWords
  704.                                    --------
  705.  
  706. "NotDeclared" keyword is used to declare a default action to take if an 
  707.               errorlevel that is not declared is reported by an archive 
  708.               engine.
  709.  
  710. <action>      in all cases of this file is either "Ignore" or "Reject".
  711.               Actually, only the first letter of "Ignore" and "Reject" is 
  712.               read by ArcDoctor.  Thus "R" is just as valid as "Reject", 
  713.               and "I" is just as valid as "Ignore".  All errors will be 
  714.               recorded, regardless of your <action> setting, but whether 
  715.               a particular error is treated as a bad file is solely 
  716.               dependent on the <action> declaration.
  717.  
  718. "Archiver"  begins the declaration of an archive engine record.   <name> is 
  719.             a short user-definable string that is used to cross-reference 
  720.             the declared record by programs that use Compress.Cfg.  The 
  721.             "name" should contain no embedded spaces, nor should it be 
  722.             longer than 8 characters long.
  723.  
  724. "Add" and "Extract"  are used to begin sub-records of errorlevels specific 
  725.            to archiving and un-archiving respectively.  To the best of my 
  726.            knowledge PKZIP and PKUNZIP are the only archivers currently on 
  727.            the market that will use this type of record - they have two 
  728.            different sets of errorlevels.  PKARC and PKXARC may have a 
  729.            similar scheme, being that ZIP and PKARC are from the same author, 
  730.            and they both use separate engines for archiving and un-archiving,  
  731.            but I could only find a set of errorlevels for PKXARC, thus I must 
  732.            assume that PKARC uses the same errorlevels as PKXARC.  If you know 
  733.            different, please inform me of the correct errorlevels for PKARC.
  734.  
  735. "All"      begins a generic sub-record of errorlevels for archive engines
  736.            that use the errorlevels for both archiving and un-archiving.
  737.  
  738.                                      Page 13
  739.  
  740.                               ErrorLev.Def  (cont.) 
  741.                               ---------------------
  742.  
  743. After "Add", "Extract", and "All", but before the next keyword declaration 
  744. you need to declare each errorlevel that might occur for each archive engine 
  745. in use the format for this is as follows:
  746.  
  747. <errorlev>;<action>  <response string>
  748.  
  749. <errorlev>    is the actual response number reported by the archive engine.
  750.  
  751. <action>      follows <errorlev> with a semi-colon separating the two 
  752.               fields.  Remember: I(gnore) and R(eject) are the two
  753.               valid <action> responses.
  754.  
  755. <response string> is simply a string of text that will be reported to 
  756.               your CRT, Log, and MSG file by the ArcDoctor, should an 
  757.               error occur with an archive engine.  This string should be 
  758.               limited to 60 characters in length - spaces included.
  759.  
  760. "End Archiver"  each archive engine's errorlevel record must end with 
  761.               this keyword.
  762.  
  763.                                     Page 14
  764.  
  765.  
  766.                     Using ArcDoctor with your Tele-Com program 
  767.                     ------------------------------------------
  768.  
  769. To automatically scan all of your downloads for viruses, and do whatever else 
  770. you wish to do while processing your downloads every time you exit your 
  771. com program follow these instructions:
  772.  
  773. 1)  Edit ArcDoc.Cfg to suit your needs.
  774. 2)  Create a temporary holding directory for unprocessed downloads.  For 
  775.     this example we will use the directory name "C:\COM\NEWIN".  To do
  776.     this use the DOS command: MD C:\COM\NEWIN
  777. 3)  Create a directory to hold all of your processed downloads. For this 
  778.     example we will use the name "C:\COM\XFER".  To do this use the DOS 
  779.     command:  MD C:\COM\XFER
  780. 4)  Modify your com programs default download directory so that all 
  781.     downloads get put in the "NEWIN" directory.
  782. 5)  Assuming your com program is in a directory named "C:\COM", with your 
  783.     favorite ASCII text editor create the following batch file, or append 
  784.     to the end of your existing com program batch file:
  785.  
  786.     @echo off
  787.     c:
  788.     cd\com
  789.     <command to start your com program>
  790.     cd\com\newin
  791.     arcdoc
  792.     copy *.* c:\com\xfer >nul
  793.     echo Y | del *.* >nul
  794.     cd\
  795.  
  796. If you place this batch file in your DOS path, you will then be able to call 
  797. your Tele-Com program from any drive or directory on your computer.
  798.  
  799. You may need to edit the path statements to suit your system's setup.  The 
  800. forth line should contain the name of the executable file that starts your 
  801. com program, eg... for Telemate us "TM", for Telix use "TELIX", for Qmodem 
  802. use "QMODEM", etc...  If you are currently using a batch file for your com 
  803. program, you may, in lieu of the executable name, use the following: 
  804.  
  805. CALL <batch file name>.
  806.  
  807. By using the example batch file above your computer will:
  808.  
  809. 1) Change drives and directories to where your Tele-Com program is.
  810. 2) Run your Tele-Com program - business as usual.
  811. 3) If you downloaded anything while in your Tele-Com program, your 
  812.    download will be processed.
  813. 4) Copy the processed downloads to a directory where you can rest assured 
  814.    that all files in that directory have been scanned for viruses.
  815. 5) Clean up the temporary download directory so it is ready for your next 
  816.    downloading session.
  817. 6) the last line will return you to the "C:\>" prompt when everything is done.
  818.  
  819.                                      Page 15
  820.  
  821.  
  822.                   Using ArcDoctor with a Bulletin Board System 
  823.                   --------------------------------------------
  824.  
  825. Once you have edited ArcDoc.Cfg to suite your needs, use the following section 
  826. for reference and ideas of how to best implement ArcDoctor on your system.
  827.  
  828.                     Using ArcDoctor with Searchlight BBS 
  829.                     ------------------------------------
  830.  
  831. From your configuration program select:  
  832.  
  833. General Configuration/AutoDoors/Upload AutoDoor
  834.  
  835. Use the following settings, of course #1 will need to reflect the path where 
  836. you setup ArcDoctor.  If you are Running a multi-node version of Searchlight 
  837. and using separate CONFIG.SL2 files for each node, you will need to repeat 
  838. this process for all nodes.
  839.  
  840. Upload Autodoor                                             
  841.  
  842.  1. Command ....................... C:\UTILS\ARCDOC.EXE   
  843.  2. Directory Path ................ .\UPLOADS.BBS       
  844.  3. Communications Support ........ Standard             
  845.  4. Abort Method .................. None                 
  846.  5. Write Protection .............. No                   
  847.  
  848.  
  849.                     Using ArcDoctor with non-Searchlight BBS' 
  850.                     ----------------------------------------
  851.  
  852. Though ArcDoctor does not have it's own com routines built-in at this time, 
  853. if the request level from registered users is high enough, it may be added 
  854. in the near future.  ArcDoctor uses BIOS video calls for all video output, 
  855. so if your BBS is capable of re-directing video output through the modem, 
  856. you should have no problem setting up ArcDoctor so your users can see what 
  857. is going on during processing.  If your system does not support redirecting 
  858. video output,  you may use a program such as DOORWAY to do this for you.
  859.  
  860. How you may install ArcDoctor is only limited by your imagination.  
  861.  
  862. One of the beta test sights has setup ArcDoctor so it may be used by a 
  863. files potential downloader so that he may verify that a file before d/ling.
  864.  
  865. Another system, using a file transfer door runs ArcDoctor between the 
  866. files door system and the main BBS with DOORWAY.
  867.  
  868. ArcDoctor is also being used in a batch file that cycles between the BBS 
  869. and a mailer front end.
  870.  
  871. Some file transfer doors and BBS systems support a virus scanning program 
  872. after each upload - this is the best place to setup ArcDoctor.
  873.  
  874. If you use batch files for your file transfer protocols you may insert the 
  875. ArcDoctor command-line in your d/l protocol batch files. 
  876.  
  877.                                      Page 16
  878.  
  879.  
  880.                            Using the VSETARCD Utility 
  881.                            --------------------------
  882.  
  883. This stand-alone utility is a temporary solution for configuration 
  884. verification.  Soon, VSETARCD (View Settings ArcDoctor) will be integrated 
  885. into a new configuration program (ADSETUP?),  ARCDOC.CFG will no longer 
  886. require manual editing from an external editor.  But until I get around 
  887. to the fancy setup program, this will have to do <Grin>.  
  888.  
  889. It is highly recommended that you run this utility after every time you edit 
  890. ARCDOC.CFG.  VSETARCD will read your ARCDOC.CFG file and COMPRESS.CFG into 
  891. memory, verify all file names, paths, and utilities declared in the above 
  892. two files.
  893.  
  894. If there should be an invalid statement that may cause problems with the 
  895. operation of ArcDoctor, you will be notified of the problem.  For the 
  896. declared archive engines in COMPRESS.CFG, you will see a list of available 
  897. archive engines.  If one of the archive engines is not found in your DOS 
  898. path,  it's name will be preceded with an Asterisk "*".
  899.  
  900. Please be sure to use this program, and verify all of your entries...  
  901. The results could be hazardous to your uploads should you do something 
  902. stupid like enter "*.*" for a StripFile name or RefuseU/L name <Grin>.
  903.  
  904.                                      Page 17
  905.  
  906.  
  907.                            Using the ADFLAVOR Utility 
  908.                            --------------------------
  909.  
  910. We used a less-than-efficient upload file processor on Flamingo BBS... 
  911. I tried out several and they all seemed to have there problems.  It was 
  912. after much frustration with such programs that I decided to write ArcDoctor.  
  913. At any rate, by the time ArcDoctor was On-Line, we had a huge assortment of 
  914. archives of different flavors (ZIP, LZH, ARJ, ARC, PAK, etc...).  
  915.  
  916. One of the first things I wanted to do was convert all of the archives to 
  917. my chosen default.  This presented a problem:  Once a file was converted, 
  918. it carried a different extension, thus the file name listed in the BBS did 
  919. not match the actual file name - The BBS would report that a converted file 
  920. didn't exist, since the name in the data base was not to be found on the 
  921. hard drive.
  922.  
  923. ADFLAVOR will process any file, whether it be a compiled data file,  as 
  924. with Searchlight BBS or WildCat! BBS systems, or an ASCII text file such 
  925. as the common FILES.BBS or the PC Board directory files.  
  926.  
  927. When initializing, ADFLAVOR will read ARCDOC.CFG to see what you have 
  928. chosen as your default archiver, then read COMPRESS.CFG to see what 
  929. archive formats are available to you.  You will be asked a few simple 
  930. questions, then ADFLAVOR will process your directory data file - renaming 
  931. all extension that are of a declared archive type to your default archiver's 
  932. extension.  Special care has been take for binary files, so embedded EOF 
  933. markers will not effect ADFLAVOR's operation.  ADFLAVOR will make a backup 
  934. of your original data file before in begins processing - this backup will 
  935. retain it's original filename but have a new extension: ".OLD".
  936.  
  937. Though I have done much to ensure this program is fail-safe, I recommend 
  938. that you first verify the results of the new data file before deleting the 
  939. "xxxxx.OLD" file.
  940.  
  941. It is this program that will evolve into the user interface for ArcDoctor. 
  942. Future releases will incorporate a configuration editor with range checking 
  943. such as that which is supplied by VSETARCD at the present.
  944.  
  945.                                     Page 18
  946.  
  947.                                    I N D E X  
  948.                                    ---------
  949.  
  950.         Action, 2, 11, 12, 13                  LOG, 8, 11, 13 
  951.         Add, 9, 10, 11, 12, 13                 LogActivity, 8
  952.         AddArcCmt, 6                           LZH, 1, 9, 17
  953.         AddFilesToArc, 7                       Mail, 2, 3, 8  
  954.         ADFLAVOR,  2, 17                       NEWIN, 14 
  955.         ADSETUP, 16                            Nomem, 5
  956.         ArcDataPath, 4                         Nopause, 5 
  957.         ARCDOC.CFG, 2, 4                       NotDeclared, 11, 12
  958.         ARCDOC.EXE, 2                          PAK, 1, 3, 9, 10, 17
  959.         ArcFilePath, 4, 6                      PKARC, 9, 12   
  960.         AutoDoors, 15                          PKUNZIP, 1, 7, 12 
  961.         Autoexec, 7                            PKXARC, 12
  962.         BadFiles, 11                           PKZIP, 1, 7, 9, 12
  963.         BadFilesDir, 5                         Position, 9 
  964.         BIOS, 15                               RAM,  3, 4 
  965.         COMPRESS.CFG, 2, 9                     RefuseDate, 8
  966.         Conversions,  2, 5                     RefuseU/L, 7
  967.         CRC, 15                                Rejected, 11 
  968.         CRT, 11, 13                            ScanCommand, 5, 6
  969.         Debugging, 2                           ScanParams, 5 
  970.         End Archiver, 9, 10, 11, 12, 13        SDN, 9  
  971.         Errorlevel, 2, 5, 12, 13               Signature, 9, 10
  972.         ERRORLEV.DEF, 2, 11                    SkipFiles, 6
  973.         Hexadecimal, 10                        StripArcCmt, 6 
  974.         ICE, 1, 9                              StripFile, 16  
  975.         Ident, 9                               StripFilesInArc, 7
  976.         Ignore, 6, 12                          StripTdComs, 6
  977.         JPEG, 1                                SysopMail, 8
  978.         KeyWord,  3, 4, 5, 6, 7, 9, 10,        VSETARCD,  2, 3, 16, 17  
  979.                  11, 12, 13                    WorkPath, 4
  980.         KillBadFiles, 5                        ZIP, 3, 6, 9, 12, 17
  981.         LHA, 1, 3, 9                           ZOO, 1, 3, 9
  982.  
  983.                                     Page 19
  984.  
  985.                           Bug Reports and Suggestions  
  986.                           --------------------------
  987.  
  988. If you encounter what you believe to be a bug in ArcDoctor, Please contact
  989. me via one of the sources listed on the cover page of this document.
  990.  
  991. The following information will help to determine the actual problem:
  992.  
  993.  1) The Name and Version of the program that had the error. eg... 
  994.     ArcDoctor v0.96
  995.  2) If the error is a "Runtime error", the error number, and it's address.
  996.  3) A copy of your ARCDOC.LOG and ARCDOC.CFG.
  997.  4) If you have suspicions of an archive being the culprit, a copy of the
  998.     suspect file would also be helpful.
  999.  4) A description of what happened, anything unusual that you noticed, etc..
  1000.  5) Your voice phone number (if possible), so I may contact you should I
  1001.     need more information.
  1002.  
  1003. If you have a suggestion for something you would like to see added, please
  1004. feel free to drop me a line.  I am always looking for ways to improve my
  1005. software.
  1006.  
  1007.                    ArcDoctor Single-Site Registration Form  
  1008.                    ---------------------------------------
  1009.  
  1010. Please fill out this form fully, as I will need the herein contained
  1011. information to create your personal ARCDOC.KEY file and for my records.
  1012.  
  1013. Name ......... __________________________________
  1014. Company/BBS .. __________________________________
  1015. Street ....... __________________________________
  1016. City, St ..... __________________________________
  1017. Zipcode ...... __________________________________
  1018.  
  1019. BBS/Date phone number .  _____ - _____ - ________
  1020. Voice phone number ....  _____ - _____ - ________
  1021. FidoNet Address (if available)... _______________
  1022.  
  1023. Password to use on Flamingo BBS  ________________
  1024.  
  1025. You need to select a form of delivery, the charge for delivery will only
  1026. be charged one time, regardless of the number of keys being ordered.
  1027.  
  1028. Please Check one:
  1029.  
  1030. ____ I'll call Flamingo BBS an download my ARCDOC.KEY (Free)
  1031. ____ Call my BBS and upload my ARCDOC.KEY             ($5.00)*** USA only ***
  1032. ____ I'm in the FidoNet nodelist and my system will   ($1.00)*** USA only ***
  1033.       accept front end uploads, freq the file to me   
  1034. ____ Send me the latest version of ArcDoctor on a     ($5.00 USA)
  1035.      ____ 3½" diskette                               ($10.00 US dollars, for 
  1036.      ____ 5¼" diskette                                 foreign orders)
  1037.      along with my ARCDOC.KEY 
  1038.  
  1039. For personal checks please allow 3 weeks for your check to clear the bank,
  1040. and processing/mail time.  Money orders will be shipped the next day,
  1041. provided I am in town.  
  1042.  
  1043. Make all checks payable to:   Ron Ryan
  1044.  
  1045. Introductory Offer:                          
  1046.     Single-Site Registration   $15.00          
  1047.     10 or more $AVE            $10.00
  1048.  
  1049. Per-Unit Price $_______  x Quantity ______ =  $ __________
  1050. Delivery charge as selected above ........... $ __________ 
  1051. Total ....................................... $ __________
  1052.  
  1053. Please mail check or money order and completed application to:
  1054.  
  1055.          Ron Ryan             If you selected to call Flamingo BBS
  1056.         ArcDoctor             and pickup your ARCDOC.KEY, please
  1057.       1061 Ellen Ct.          allow sufficient time for your check
  1058.   Melbourne, Fla. 32935       to clear the bank then call: (407) 253-0782  
  1059.                                                             N/8/1
  1060.                                                             1200-16.8k BPS
  1061.